//
//  CLViewController.h
//  CLExtension
//
//  Created by CharlieLiao on 2017/7/3.
//  Copyright © 2017年 Charlie. All rights reserved.
//

#import <UIKit/UIKit.h>

@protocol CLVCProtocol <NSObject>

@optional
/// 实现该属性即可自定义view
@property (nonatomic, class, readonly) Class _Nonnull viewClass;

@end

@class CLViewController;

@protocol CustomViewProtocol <NSObject>

@optional
/// 初始化子视图参数
- (void)initSetupSubviews;

/// 设置子视图约束
- (void)makeSubViewConstraints;

/// 设置视图关联关系
- (void)setupOutlets:(CLViewController* _Nonnull)owner;

/// 设置协议引用关联关系
- (void)setupReferencingOutlets:(CLViewController* _Nonnull)owner;

/// 设置事件关联关系
- (void)setupReceivedActions:(CLViewController* _Nonnull)owner;

@end




@interface CLViewController : UIViewController <CLVCProtocol>




@end
